Context-aware applications, which adapt their behavior to environmental context such as physical location, are an important class of applications in emerging pervasive computing environments. Oxygen home page: http://oxygen.lcs.mit.edu. Examples include location-aware applications that enable users to discover resources in their physical proximity [Harter, A., Hopper, A., Steggles, P., Ward, A., and Webster, P. xe2x80x9cThe Anatomy of a Context-Aware Applicationxe2x80x9d. In Proc. 7th ACM MOBICOM Conf. (Seattle, Wash., August 1999)., Priyantha, N., Chakraborty, A., and Balakrishnan, H. xe2x80x9cThe Cricket Location-Support System.xe2x80x9d In Proc. 6th ACM MOBICOM Conf. (Boston, Mass., August 2000)], active maps that automatically change as a user moves [Schilit, B., and Theimer, M. xe2x80x9cDisseminating Active Map Information to Mobile Hosts.xe2x80x9d IEEE Network (September/October 1994), 22-32.], and applications whose user interfaces adapt to the user""s location. A significant amount of previous work has focused on providing device position capability indoors, including the Active Badge [Want, R., Hopper, A., Falcao, V., and Gibbons, J. xe2x80x9cThe Active Badge Location System.xe2x80x9d ACM Transactions on Information Systems 10, 1 (January 1992), 91-102.], Bat [Harter, A., Hopper, A., Steggles, P., Ward, A., and Webster, P. xe2x80x9cThe Anatomy of a Context-Aware Application.xe2x80x9d In Proc. 7th ACM MOBICOM Conf. (Seattle, Wash., August 1999).], RADAR [Bahl, P., and Padmanabhan, V. xe2x80x9cRADAR: An In-Building RF-based User Location and Tracking System.xe2x80x9d In Proc. IEEE INFOCOM (Tel-Aviv, Israel, March 2000).], and Cricket [Priyantha, N., Chakraborty, A., and Balakrishnan, H. xe2x80x9cThe Cricket Location-Support System.xe2x80x9d In Proc. 6th ACM MOBICOM Conf. (Boston, Mass., August 2000).] systems.
In the Cricket system, several beacons in a room broadcast their location with RF signals. An ultrasonic wave is also transmitted from each beacon. Both waves from a beacon are detected at a mobile device and the difference in arrival times indicates the distance of the mobile unit from the beacon.
Whereas prior implementations of the Cricket system have enabled accurate location of a mobile device, they did not allow for detection of orientation of the device. Orientation is significant, for example, in application to a hand-held controller. Both the location and orientation of the controller determine the fixed device within a room at which the controller is pointed and which is to be controlled.
The ability to determine the orientation of a device is of importance in context-aware and location-dependent mobile computing. By analogy to a traditional compass, knowledge of orientation through the Cricket compass attached to a mobile device enhances various applications, including efficient way-finding and navigation, directional service discovery, and xe2x80x9caugmented-realityxe2x80x9d displays. Our compass infrastructure enhances the spatial inference capability of the Cricket indoor location system, and enables new pervasive computing applications.
In a system in which a beacon on a first unit, such as a fixed ceiling, transmits a wave to be detected by a second unit, such as a mobile unit, plural receivers, each fixed relative to the second unit, sense the transmitted wave to provide plural sensed signals. A processor processes the sensed signals to specify orientation of the second unit relative to the beacon based on phase differences of the plural sensed signals.
In disclosed embodiments, the wave is an ultrasonic wave. Due to the short wavelength of the ultrasonic wave and the required spacing of practical receivers, a given observed phase difference can correspond to any number of actual phase differences all separated by 2xcfx80. In order to resolve that ambiguity, the system comprises at least three receivers. It has been determined that by using at least three receivers in a line, with the receivers spaced by differences which are relatively prime integral multiples of the half wavelength of the ultrasonic wave, the ambiguity can be eliminated.
Due to symmetry of a single line of receivers, there can be an additional ambiguity between two potential directions. That ambiguity is resolved by providing two non-collinear sets of collinear receivers. In one implementation, each set of receivers comprises three collinear receivers, the sets of receivers being perpendicular to each other and sharing one receiver.
In one implementation, the specified orientation includes angular orientation within a plane offset from the beacon. For example, the plane may be a horizontal plane offset from the ceiling plane on which plural beacons are mounted.
Orientation may be based on phase differences of sensed signals from plural beacons and on position relative to each of the plural beacons. The position is determined from measured distances relative to each of the plural beacons.